#include <iostream>
#include <algorithm>

using namespace std;

const int N = 1e5 + 10;

int n;
int a[N];

//选择排序
//每次找出末排序序列中最小的元素，然后放进有序序列的后面 
void selection_sort()
{
	for(int i = 1; i < n; i++) // 待排序区间的首位置 
	{
		// [i, n]区间就是待排序的区间
		int pos = i;
		//查找待排序区间最小的元素的下标 
		for(int j = i + 1; j <= n; j++)
		{
			if(a[j] < a[pos])
			{
				pos = j;	
			}
		 } 
		 
		 //与首元素做交换
		 swap(a[i], a[pos]); 
	}
}

int main()
{
	cin >> n;
	for(int i = 1; i <= n; i++) cin >> a[i];	
	
	selection_sort();
	
	for(int i = 1; i <= n; i++) cout << a[i] << " ";	
	
	return 0;
}
